/*
 * @(#)Fault.java $version 2010. 8. 11
 *
 * Copyright 2007-2010 NHN Corp. All rights Reserved. 
 * NHN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */

package com.nhncorp.usf.core.call;

/**
 * The Interface Fault.
 * 
 * @author Web Platform Development Team
 */
public interface Fault extends Reply {

	/**
	 * error code를 반환합니다.
	 * 500: 일반 오류
	 * 400: 올바르지 않은 parameter 오류
	 * 401: reserved
	 * 403: 권한 오류
	 * 404: 존재하지 않는 command오류
	 * 501: command는 존재하나 구현체가 없는 경우 (ex) interface)
	 * 513: 시스템 리소스가 부족하여 수행할 수 없는 경우 
	 * 
	 * @return errorcode 
	 */
	String getCode();

	/**
	 * error code에 연관된 message를 전송한다.
	 * 
	 * @return error에 관련된 메시지
	 */
	String getMessage();

	/**
	 * error code에 연관된 상세 message를 전송한다.
	 * 
	 * @return error error에 관련된 상세 메시지
	 */
	Object getDetail();
}